home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 June: ROMin Holiday / ADC Developer CD (1992-06) (''ROMin Holiday'')_iso / Developer Connection - 06-1992.iso / Developer Essentials / MPW Interfaces & Libraries / PInterfaces / Resources.p < prev    next >
Encoding:
Text File  |  1992-01-29  |  5.0 KB  |  174 lines  |  [TEXT/MPS ]

  1.  
  2. {
  3. Created: Thursday, September 12, 1991 at 2:50 PM
  4.  Resources.p
  5.  Pascal Interface to the Macintosh Libraries
  6.  
  7.   Copyright Apple Computer, Inc. 1985-1991
  8.   All rights reserved
  9. }
  10.  
  11.  
  12. {$IFC UNDEFINED UsingIncludes}
  13. {$SETC UsingIncludes := 0}
  14. {$ENDC}
  15.  
  16. {$IFC NOT UsingIncludes}
  17.  UNIT Resources;
  18.  INTERFACE
  19. {$ENDC}
  20.  
  21. {$IFC UNDEFINED UsingResources}
  22. {$SETC UsingResources := 1}
  23.  
  24. {$I+}
  25. {$SETC ResourcesIncludes := UsingIncludes}
  26. {$SETC UsingIncludes := 1}
  27. {$IFC UNDEFINED UsingTypes}
  28. {$I $$Shell(PInterfaces)Types.p}
  29. {$ENDC}
  30. {$IFC UNDEFINED UsingFiles}
  31. {$I $$Shell(PInterfaces)Files.p}
  32. {$ENDC}
  33. {$SETC UsingIncludes := ResourcesIncludes}
  34.  
  35. CONST
  36. resSysHeap = 64;    {System or application heap?}
  37. resPurgeable = 32;    {Purgeable resource?}
  38. resLocked = 16;        {Load it in locked?}
  39. resProtected = 8;    {Protected?}
  40. resPreload = 4;        {Load in on OpenResFile?}
  41. resChanged = 2;        {Resource changed?}
  42. mapReadOnly = 128;    {Resource file read-only}
  43. mapCompact = 64;    {Compact resource file}
  44. mapChanged = 32;    {Write map out at updat}
  45.  
  46. { Values for setting RomMapInsert and TmpResLoad }
  47. mapTrue = $FFFF;    {insert ROM map w/ TmpResLoad = TRUE.}
  48. mapFalse = $FF00;    {insert ROM map w/ TmpResLoad = FALSE.}
  49.  
  50. FUNCTION InitResources: INTEGER;
  51.  INLINE $A995;
  52. PROCEDURE RsrcZoneInit;
  53.  INLINE $A996;
  54. PROCEDURE CloseResFile(refNum: INTEGER);
  55.  INLINE $A99A;
  56. FUNCTION ResError: INTEGER;
  57.  INLINE $A9AF;
  58. FUNCTION CurResFile: INTEGER;
  59.  INLINE $A994;
  60. FUNCTION HomeResFile(theResource: Handle): INTEGER;
  61.  INLINE $A9A4;
  62. PROCEDURE CreateResFile(fileName: Str255);
  63.  INLINE $A9B1;
  64. FUNCTION OpenResFile(fileName: Str255): INTEGER;
  65.  INLINE $A997;
  66. PROCEDURE UseResFile(refNum: INTEGER);
  67.  INLINE $A998;
  68. FUNCTION CountTypes: INTEGER;
  69.  INLINE $A99E;
  70. FUNCTION Count1Types: INTEGER;
  71.  INLINE $A81C;
  72. PROCEDURE GetIndType(VAR theType: ResType;index: INTEGER);
  73.  INLINE $A99F;
  74. PROCEDURE Get1IndType(VAR theType: ResType;index: INTEGER);
  75.  INLINE $A80F;
  76. PROCEDURE SetResLoad(load: BOOLEAN);
  77.  INLINE $A99B;
  78. FUNCTION CountResources(theType: ResType): INTEGER;
  79.  INLINE $A99C;
  80. FUNCTION Count1Resources(theType: ResType): INTEGER;
  81.  INLINE $A80D;
  82. FUNCTION GetIndResource(theType: ResType;index: INTEGER): Handle;
  83.  INLINE $A99D;
  84. FUNCTION Get1IndResource(theType: ResType;index: INTEGER): Handle;
  85.  INLINE $A80E;
  86. FUNCTION GetResource(theType: ResType;theID: INTEGER): Handle;
  87.  INLINE $A9A0;
  88. FUNCTION Get1Resource(theType: ResType;theID: INTEGER): Handle;
  89.  INLINE $A81F;
  90. FUNCTION GetNamedResource(theType: ResType;name: Str255): Handle;
  91.  INLINE $A9A1;
  92. FUNCTION Get1NamedResource(theType: ResType;name: Str255): Handle;
  93.  INLINE $A820;
  94. PROCEDURE LoadResource(theResource: Handle);
  95.  INLINE $A9A2;
  96. PROCEDURE ReleaseResource(theResource: Handle);
  97.  INLINE $A9A3;
  98. PROCEDURE DetachResource(theResource: Handle);
  99.  INLINE $A992;
  100. FUNCTION UniqueID(theType: ResType): INTEGER;
  101.  INLINE $A9C1;
  102. FUNCTION Unique1ID(theType: ResType): INTEGER;
  103.  INLINE $A810;
  104. FUNCTION GetResAttrs(theResource: Handle): INTEGER;
  105.  INLINE $A9A6;
  106. PROCEDURE GetResInfo(theResource: Handle;VAR theID: INTEGER;VAR theType: ResType;
  107.  VAR name: Str255);
  108.  INLINE $A9A8;
  109. PROCEDURE SetResInfo(theResource: Handle;theID: INTEGER;name: Str255);
  110.  INLINE $A9A9;
  111. PROCEDURE AddResource(theResource: Handle;theType: ResType;theID: INTEGER;
  112.  name: Str255);
  113.  INLINE $A9AB;
  114. FUNCTION SizeResource(theResource: Handle): LONGINT;
  115.  INLINE $A9A5;
  116. FUNCTION MaxSizeRsrc(theResource: Handle): LONGINT;
  117.  INLINE $A821;
  118. FUNCTION RsrcMapEntry(theResource: Handle): LONGINT;
  119.  INLINE $A9C5;
  120. PROCEDURE SetResAttrs(theResource: Handle;attrs: INTEGER);
  121.  INLINE $A9A7;
  122. PROCEDURE ChangedResource(theResource: Handle);
  123.  INLINE $A9AA;
  124. PROCEDURE RmveResource(theResource: Handle);
  125.  INLINE $A9AD;
  126. PROCEDURE UpdateResFile(refNum: INTEGER);
  127.  INLINE $A999;
  128. PROCEDURE WriteResource(theResource: Handle);
  129.  INLINE $A9B0;
  130. PROCEDURE SetResPurge(install: BOOLEAN);
  131.  INLINE $A993;
  132. FUNCTION GetResFileAttrs(refNum: INTEGER): INTEGER;
  133.  INLINE $A9F6;
  134. PROCEDURE SetResFileAttrs(refNum: INTEGER;attrs: INTEGER);
  135.  INLINE $A9F7;
  136. FUNCTION OpenRFPerm(fileName: Str255;vRefNum: INTEGER;permission: SignedByte): INTEGER;
  137.  INLINE $A9C4;
  138. FUNCTION RGetResource(theType: ResType;theID: INTEGER): Handle;
  139.  INLINE $A80C;
  140. FUNCTION HOpenResFile(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;
  141.  permission: SignedByte): INTEGER;
  142. {$IFC SystemSevenOrLater }
  143.  INLINE $A81A;
  144. {$ENDC}
  145. PROCEDURE HCreateResFile(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255);
  146. {$IFC SystemSevenOrLater }
  147.  INLINE $A81B;
  148. {$ENDC}
  149.  
  150. FUNCTION FSpOpenResFile(spec: FSSpec;permission: SignedByte): INTEGER;
  151.  INLINE $303C,$000D,$AA52;
  152. PROCEDURE FSpCreateResFile(spec: FSSpec;creator: OSType;fileType: OSType;
  153.  scriptTag: ScriptCode);
  154.  INLINE $303C,$000E,$AA52;
  155.  
  156. {  partial resource calls  }
  157. PROCEDURE ReadPartialResource(theResource: Handle;offset: LONGINT;buffer: UNIV Ptr;
  158.  count: LONGINT);
  159.  INLINE $7001,$A822;
  160. PROCEDURE WritePartialResource(theResource: Handle;offset: LONGINT;buffer: UNIV Ptr;
  161.  count: LONGINT);
  162.  INLINE $7002,$A822;
  163. PROCEDURE SetResourceSize(theResource: Handle;newSize: LONGINT);
  164.  INLINE $7003,$A822;
  165.  
  166.  
  167.  
  168. {$ENDC} { UsingResources }
  169.  
  170. {$IFC NOT UsingIncludes}
  171.  END.
  172. {$ENDC}
  173.  
  174.